﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Mahanet.Abyss.PathCalculation
{
    #region Delegates

    public delegate TValue FunctionApproximation<TParam, TValue>(TParam t);

    #endregion

    public interface IPathOracle<TParam, TValue>
    {
		FunctionApproximation<TParam, TValue> Approximation { get; }

        void AddPointData(DataPoint<TParam, TValue> point);

        void GenerateApproximation();

        double GetCertainty();

		int DataPointCount { get; }
    }
}
